package com.adnaan.api.service;

import com.adnaan.api.model.entity.AppUser;
import com.adnaan.common.model.dto.auth.LoginRequest;
import com.adnaan.common.model.dto.auth.LoginResponse;
import com.adnaan.common.model.dto.auth.RegisterRequest;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * 前台用户服务接口
 */
public interface AppUserService extends IService<AppUser> {

    /**
     * 用户注册
     *
     * @param registerRequest 注册请求
     * @return 用户ID
     */
    Long register(RegisterRequest registerRequest);

    /**
     * 用户登录
     *
     * @param loginRequest 登录请求
     * @return 登录响应
     */
    LoginResponse login(LoginRequest loginRequest);

    /**
     * 通过用户名查询用户
     *
     * @param username 用户名
     * @return 用户对象
     */
    AppUser getByUsername(String username);

    /**
     * 获取当前登录用户
     *
     * @return 登录响应
     */
    LoginResponse getCurrentUser();
} 